package com.weibo.service;

import com.weibo.common.util.PageResult;
import com.weibo.pojo.Message;
import com.weibo.pojo.User;

import java.util.Map;

/**
 * @InterfaceName FriendService
 * @Author 天火
 * @Date 2019-03-12
 * @Version 1.0
 */
public interface FriendService {
    /**
     * 查找用户好友微博
     * @param uId
     * @param pageNum
     * @return
     */
    PageResult findFriendWeibo(long uId, Integer pageNum);

    /**
     * 查找用关注好友数量
     * @param id
     * @return
     */
    int findAttentionUserNum(long id);

    /**
     * 分页显示用户关注的好友
     * @param uId //用户ID
     * @param pageNum //页码
     * @return pageResult
     */
    PageResult findAttentionUserListByUserId(Long uId,int pageNum);

    /**
     * 用户对用户操作
     * @param operation
     * @param aUser
     * @param bUser
     * @return
     */
    User operationUser(String operation, User aUser, User bUser);

    /**
     * 双方私信
     * @param aId 发起会话用户
     * @param bId 接受会话用户
     * @return
     */
    Map<String, Object> findMessageNOReadById(Long aId, Long bId);

    /**
     * 插入消息和检查是否被拉黑
     * @param message
     */
    void sendMessage(Message message);

    /**
     * 根据用户查询
     * @param userId 用户Id
     * @return 用户集合
     */
    PageResult findFansByUserId(Long userId,Integer pageNum);

    /**
     * 查询拉黑用户
     * @param userId 用户ID
     * @param pageNum 页码
     * @return 用户集合
     */
    PageResult findBlacksUserByUserId(Long userId,Integer pageNum);

}
